Software Development
Clean Coding Techniques
Architecture and Testable Code
Defensive Programming, MVC, and DDD
Functions, Type Checking, Error Handling, and Testing
Implementation
Introduction to Clean Coding
Introduction to SOLID
Syntax, Variables, Objects, and Classes

Architecture and Testable Code

Course Number:
sd_clco_a06_it_enus
Lesson Objectives

Architecture and Testable Code

  • start the course
  • list the various multi-tier software development architectural models and how they can promote clean coding
  • recognize the importance of layers in application development
  • describe the MVP paradigm in application development
  • describe the differences and similarities between the MVP and MVC paradigms in application development
  • describe domain-centric architecture and its purpose
  • list the reasons why domain-centric architecture is an important part of clean coding in application development
  • specify various types of domain-centric architectural models in application development
  • specify the pros and cons of using a domain architectural model in application development
  • describe testing and why it's important in clean coding
  • recognize different testing practices that enhance the clean coding paradigm
  • demonstrate how to create automated unit testing in .NET projects
  • describe software architecture and testable code and how they are related to clean coding

Overview/Description
Beyond the scope of the actual code is the overarching architecture. In this course, you'll learn clean coding as it relates to application layers, domain architecture, and testable code.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Defensive Programming, MVC, and DDD

Course Number:
sd_clco_a02_it_enus
Lesson Objectives

Defensive Programming, MVC, and DDD

  • start the course
  • define defensive programming and its basic philosophy
  • specify techniques used in defensive programming
  • describe secure programming and how it relates to defensive programming
  • describe offensive programming and how it relates to defensive programming
  • specify how and why ISC can be reused
  • define MVC and how it relates to clean coding
  • describe the purpose of MVC
  • specify how MVC can be implemented
  • list the pros and cons of MVC
  • describe how the MVC paradigm is illustrated by traditional web design
  • describe the availability of MVC frameworks for different languages
  • describe DDD and how it relates to clean coding
  • define the process of DDD
  • describe pros and cons of implementing DDD
  • describe defensive programming and MVC and how they contribute to clean coding

Overview/Description
Defensive Programming, model-view-controller (MVC), and domain-driven design (DDD) are software development techniques that can be leveraged to create clean code. In this course you'll learn about these techniques.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Functions, Type Checking, Error Handling, and Testing

Course Number:
sd_clco_a05_it_enus
Lesson Objectives

Functions, Type Checking, Error Handling, and Testing

  • start the course
  • describe functions and how they should be implemented in clean coding
  • discuss function naming and how it should be implemented in clean coding
  • specify function arguments and how they should be implemented in clean coding
  • define function parameters and why functions should be subdivided in clean coding
  • discuss function conditionals and how they should be implemented in clean coding
  • describe global functions and how they should be implemented in clean coding
  • identify levels of abstraction and how they should be implemented in clean coding
  • describe the importance of exception handling and how it should be utilized in clean coding
  • recall exception handling techniques and how they improve code
  • specify type checking and how it relates to clean coding
  • list side effects that can be experienced when using functions and recognize how they can be avoided
  • describe best practices for naming, namespaces, objects, and functions
  • describe clean coding best practices

Overview/Description
Clean coding means better code through often rigid standards. In this course, you'll learn clean coding through the use of functions, error handling, testing, and other best practices.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Implementation

Course Number:
sd_clco_a07_it_enus
Lesson Objectives

Implementation

  • start the course
  • recognize characteristics of the Command Query model
  • describe Command Query Responsibility Segregation (CQRS) and how it complements domain-driven design (DDD) in application development
  • specify how Command Query Responsibility Segregation (CQRS) and event sourcing play a role in clean coding
  • list the benefits of CQRS and why it promotes clean coding
  • specify how your commitment to clean coding can improve your final products
  • describe screaming architecture and its relevance in clean coding
  • recognize how good architecture is envisioned through adoption of the screaming architecture paradigm
  • specify how to estimate time frames and ensure that they don't interfere with a commitment to clean coding
  • describe how clean coding plays a role in software planning and design
  • describe how code creation should be approached in the clean coding process
  • describe the clean microservice architecture and how it relates to clean coding development
  • specify common types of testing and how clean coding fits into them
  • identify how your clean coding process can improve upon existing products, as your applications evolve
  • describe CQRS and factors relating to implementation

Overview/Description
In order to facilitate clean coding, you have to implement its techniques and principles. In this course, you'll learn about CQRS, planning, implementation, testing, and the evolution of applications.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Introduction to Clean Coding

Course Number:
sd_clco_a01_it_enus
Lesson Objectives

Introduction to Clean Coding

  • start the course
  • describe the basic goals of clean coding
  • specify the reasons why clean coding is important
  • define the benefits of adopting clean coding
  • describe the fundamental principle of creating simple code
  • define why code should be made understandable
  • specify how code can be better by being made consistent
  • define the importance and benefits of maintainable code
  • describe the principle of DRY and why it's important
  • specify the importance of code readability
  • define the importance of better code functionality
  • describe the importance of better code security
  • define the benefits and best practices for organizing project files
  • specify the benefits and best practices for team organization and clean coding
  • describe how policies and procedures can be implemented for better clean coding
  • demonstrate usage of different naming conventions, commenting, and syntax

Overview/Description
Clean Coding is a broad term for philosophies, principles, and practices for creating better, more efficient, and less error-prone software. This course covers clean coding and how to create better code.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Introduction to SOLID

Course Number:
sd_clco_a03_it_enus
Lesson Objectives

Introduction to SOLID

  • start the course
  • describe the SOLID model and its five principles
  • define the Single Responsibility Principle and how it fits in the SOLID model
  • describe techniques used with the Single Responsibility Principle
  • describe the Open/Closed Principle and how it fits in the SOLID model
  • specify techniques used in the Open/Closed Principle
  • define the LSP and how it fits in the SOLID model
  • specify techniques used in the LSP
  • define the Interface Segregation Principle and how it fits in the SOLID model
  • specify techniques used in the Interface Segregation Principle
  • define the DIP and how it fits in the SOLID model
  • specify techniques used in the DIP
  • describe the SOLID model and its five principles

Overview/Description
SOLID is a set of software development principles that can be used to create better code. In this course, you'll learn about SOLID and its five principles.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Syntax, Variables, Objects, and Classes

Course Number:
sd_clco_a04_it_enus
Lesson Objectives

Syntax, Variables, Objects, and Classes

  • start the course
  • describe how syntax, regardless of language, should be honored and respected
  • define the purpose of commenting and why it's important in clean coding
  • specify the purpose of indentation and why it's important in clean coding
  • describe the purpose of white space and why it's important in clean coding
  • define the purpose of using proper naming conventions in clean coding
  • use camel case and pascal case and state why it's important to choose the right case in clean coding
  • use snake case and describe why it's important to choose the right case in clean coding
  • define the purpose of variables and how they relate to clean coding
  • describe variable naming and how it may be used in clean coding
  • define the difference between local and global variables and how they may be used in clean coding
  • describe explicit naming and how it may be implemented in clean coding
  • describe deep nesting and why it may be avoided in clean coding
  • describe return statements and why it's important to consider their use in clean coding
  • define classes and objects and how they may be implemented in clean coding
  • specify encapsulation and how it may be implemented in clean coding
  • define whether public, private, or protected members may be implemented in clean coding
  • describe inheritance and how it may be implemented in clean coding
  • discuss fluency and what it represents in clean coding
  • describe clean coding techniques for variables, objects, and classes

Overview/Description
Clean coding is as much about the code itself as it is about principles. In this course, you'll learn about syntax, variables, objects, and classes and methods for better clean coding.

Target Audience
Software developers who wish to learn and implement clean coding techniques

Close Chat Live